package businesslogic.userBl;

import java.util.ArrayList;

import vo.userVO.DepartmentDeanVO;
import vo.userVO.StudentVO;
import vo.userVO.TeacherVO;
import vo.userVO.UniversityDeanVO;
import vo.userVO.UserVO;
import businesslogicservice.userblservice.AdministratorBLService;
import dataservice.ResultMessage;


public class AdministratorController  implements AdministratorBLService{

	AdministratorBLService admin;
	private String UserID;
	
	
	public AdministratorController() {
		this.UserID=UserID;
		admin=new Administrator(UserID);	
		
	}
	

	

	@Override
	public ResultMessage deleteUser(UserVO vo)throws Exception {
		return admin.deleteUser(vo);
	}

	
	@Override
	public ResultMessage addUser(StudentVO vo)throws Exception {
		return admin.addUser(vo);
	}
	@Override
	public ResultMessage addUser(TeacherVO vo)throws Exception {
		return admin.addUser(vo);
	}
	@Override
	public ResultMessage addUser(UniversityDeanVO vo)throws Exception {
		return admin.addUser(vo);
	}
	@Override
	public ResultMessage addUser(DepartmentDeanVO vo)throws Exception {
		return admin.addUser(vo);
	}
	@Override
	public ArrayList<UserVO> getUserList(int userType,String departmentID) throws Exception{
		// TODO Auto-generated method stub
		return admin.getUserList(userType, departmentID);
	}




	@Override
	public ResultMessage modifyPassword(String userID, String password)throws Exception {
		// TODO Auto-generated method stub
		return admin.modifyPassword(userID, password);
	}




	@Override
	public ResultMessage modifyUser(StudentVO vo)throws Exception {
		return admin.modifyUser(vo);
	}




	@Override
	public ResultMessage modifyUser(TeacherVO vo)throws Exception {
		return admin.modifyUser(vo);
	}




	@Override
	public ResultMessage modifyUser(UniversityDeanVO vo)throws Exception {
		return admin.modifyUser(vo);
	}




	@Override
	public ResultMessage modifyUser(DepartmentDeanVO vo)throws Exception {
		return admin.modifyUser(vo);
	}




	@Override
	public ResultMessage login(String id, char[] password) {
		return admin.login(id, password);
	}




	@Override
	public ResultMessage changePassword(char[] oldPassword, char[] password1,
			char[] password2) {
		return admin.changePassword(oldPassword, password1, password2);
	}




	@Override
	public String getUserName(String userID)throws Exception {
		return admin.getUserName(userID);
	}




	@Override
	public int getUserType(String userID) throws Exception {
		return admin.getUserType(userID);
	}

}
